Identity Management in Internet of Things with Blockchain

225

Asymmetric cryptography (also known as public–private key cryptography),

which is applied roughly for giving the end users an identity in the network,

and most importantly, for signing transactions upon the invocation of a smart

contract.

Thehashingalgorithmsensuretheimmutabilityoftheledgerviathecreationofthe

Merkle tree, consistency to the network and enhanced security [34]. The consensus

algorithm Proof-of-Work (PoW) is based on a hashing process that must result in a

hash with specific characteristics (e.g., the first 5 digits should be zero). Hashing is

mostly used in internal operations within the network.

The second type of cryptography is extremely important to be used properly

from the corresponding wallet interacting with the network, especially considering

the implementation of a decentralized IAM system. Wallets are the only known

programmable tool capable of providing ownership of identity in a blockchain

system, acting as the interface between the entities and the ledger. The authors of [34]

having also analyzed the different types of attacks which can happen in a blockchain

network show that there are at least three attacks that can compromise the identity of

a user, not only by exposing their personal data but also by endangering the integrity

of the network as well.

In the context of IoT, the use of cryptographic mechanisms must be reconsid-

ered due to the fact that IoT devices have limited processing power, most of which

will be used for their primary functions (e.g., measuring data from the physical

world or having a mechanical part which must change state). The implementation of

blockchain-centric cryptography methods in an IoT system is yet at its early stages.

Over the next sections of this chapter, a short presentation of Zero-Knowledge Proofs

(ZKPs) and Decentralized Public Key Infrastructure (DPKI) will take place from

a blockchain perspective. ZKPs utilizing hashing algorithms and being performed

off the blockchain network can provide anonymity to the authorization process,

providing proofs instead of identity information. On the other hand, integrating DKPI

offers all the advantages of the traditional PKI technology but in a decentralized

manner.

4.1

Zero-Knowledge Proofs (ZKP)

Zero-Knowledge Proofs (ZKPs) have revolutionized modern cryptography and they

can significantly upgrade blockchain technologies if used properly. ZKPs have

emerged based on mathematical theorems and they constitute a large part of proof

systems theory, where knowledge as a concept is statistically measured [35].

Zero-Knowledge systems function in an environment where a prover must

convince a verifier about the validity of a statement, without revealing any addi-

tional information besides the statement itself. The verifier must probabilistically

come to a conclusion where (s)he is convinced that the prover’s statement is honest.

A Zero-Knowledge statement is to satisfy three explicit principles: